<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <pre>
        TypeScript：就是JS的超集，封装了类型。
                    基于JavaScript的一个扩展，用于扩展type类型，做约束。
        TS的环境搭建：
            参考文档
        建议：写ts，生成js，被html引用。
             也可以通过node XXX.ts/XXX.js检验代码。
        
        常规指令：
          tsc --init   取消重复校验  会自动生成tsconfig.json配置文件
          tsc --watch  自动编译  ctrl+c退出
          tsc --noEmitOnError ts错误时不编译成js
          tsc --noEmitOnError --watch 当ts错误时，不会编译生成新的js文件

        1、静态类型检查：编译完代码会检查类型是否正确
        2、非异常故障：不仅仅是编译类型，也可以检查类型，甚至是基本的逻辑
        3、优化编译。以后写ts代码，可以不用一步一编译，使用watch自动编译
                    tsc 文件名.ts --watch
        4、显示类型：手动给类型
           添加类型的语法：变量:类型
        5、降级编译
           修改配置文件tsconfig.json --> target   [通常是改ES6]
        6、严格模式
           strict:true  严格遵循ts校验 [不推荐不校验]
           noImplicitAny:true
           strictNullChecks:true
           修改配置文件tsconfig.json --> strict 
        7、ts中常用类型
           基本类型[undefined、null、number、string、boolean]、数组类型、枚举类型、any类型、函数类型、对象类型{x:1,y:2}、联合类型x|y、类型别名
           unknown类型、never类型、接口类型、文字类型、Object任意对象类型
        

    </pre>
    <script type="text/javascript" src="js/chapter1.js"></script>
</body>
</html>